Aspects of the present invention relate to gathering and use of information. Other aspects of the present invention relate to information synchronization.
In a society that is becoming increasingly networked, information is often gathered from different sources across a network and used to make various decisions. For example, managers of computer networks may use discovery agents to gather information from devices in the network. Examples of the information collected by discovery agents include operational status (e.g., the availability), transmission facilities (e.g., the bandwidth that a device can handle) of the underlying devices, or the capabilities of the installed devices which may include software and available hardware. Such collected information may be used to evaluate network performance such as determining the bottleneck of the network traffic, to determine the structure and the operation of the network, and to improve the network performance by reconfiguring the network based on the gathered information.
In a different application, database administrators may deploy similar agents to monitor data manipulation acts performed on devices that host different copies of the same data or to identify different versions of the same file stored on different devices. The information gathered from these monitoring agents may be used to determine appropriate consolidation operations to enforce data integrity. For example, a user may have a file stored on different devices with the same name (e.g., on a personal computer at home and on a Palm Pilot). The files with the same name may correspond to different versions of the same file that is edited under different circumstances (e.g., the user may have edited the file on the personal computer on Monday and edited it again while the user is on the road on Tuesday). An automated data administrator may automatically consolidate these different versions to maintain the data integrity of the file.
The aggregated information gathered from multiple sources (via or through agents) may contain duplicate data. For example, when a network manager sends inquiries to multiple agents to search for an available router device, more than one agent may respond (e.g., multiple routers are available). The inquiry from a database administrator to identify a file on different devices may yield multiple responses.